A Study of Quality Improvements By Refactoring
نویسندگان
چکیده
Refactorings, behavior preserving transformations, are claimed to make software easier to understand and to improve software design. However, these claimed quality improvements have yet to be validated. This dissertation reports on our contributions to their validation. First, a validation of two existing reengineering patterns that use refactoring to support program comprehension is presented. Second, we discuss the results of formal analysis of the conditions in which known refactorings improve coupling and cohesion as criteria for well-balanced object-oriented design. The results of this research confirm that, indeed, the claimed benefits can occur, and describe how and when the application of refactoring can improve selected quality characteristics. The integration of these results in today’s refactoring tools can support maintainers in assessing which refactorings to apply where, ultimately reducing the effort of transforming towards an optimal solution.
منابع مشابه
An Empirical Evaluation of Impact of Refactoring On Internal and External Measures of Code Quality
Refactoring is the process of improving the design of existing code by changing its internal structure without affecting its external behaviour, with the main aims of improving the quality of software product. Therefore, there is a belief that refactoring improves quality factors such as understandability, flexibility, and reusability. However, there is limited empirical evidence to support suc...
متن کاملImpact of Refactoring on Code Quality Improvement in Software Maintenance
Quality software are robust, reliable and easy to maintain, and therefore reduces the cost of software maintenance. But as software systems undergo modifications, improvements and enhancements to cope with evolving requirements, quality of software can be decreased. Refactoring is one of the methods which have been applied to improve software quality. Supporters claim that it helps increasing t...
متن کاملOpportunities and challenges in deriving metric impacts from refactoring postconditions
Refactoring – transforming the source-code of an object-oriented program without changing its external observable behaviour – is a restructuring process aimed at resolving evolution obstacles. Currently however, the efficiency of the refactor process in terms of quality improvements remains unclear. Such quality improvement can be expressed in terms of an impact on OO metrics. The formalization...
متن کاملA Validation of Refactorings Impact on Maintainability: A Case Study
Software refactorings are used commonly to fix problems such as the code smells. In this case study, we use a quality model to subjectively validate the consequences of resolving bad smells on software maintainability. The model is used to help software developers in their endeavor to improve software quality. This model can be used to search for the best alternative refactorings that can lead ...
متن کاملPersonalized Multi-Objective Approach for Refactoring Recommendations
Refactoring is an extremely important solution to reduce and manage the growing complexity of software systems. However, maintaining a high-level code quality can be expensive since time and monetary pressures force developers to neglect to improve the quality of their source code. Thus, programmers are “opportunistic” when they apply refactorings since most of them are interested in improving ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2006